// 先引入axios
import axios from 'axios';

//配置axios 允许请求携带认证到服务器(cookie)
axios.default.widthCredentials = true
// 发送一个get请求

//1步骤 登入 =>登入成功=>获取token=>保存token
const login = (data) => {
    return axios({
        url: "api/users/login",
        data: data,
        method: 'post',
        headers: { "Content-Type": "application/json" }
    })
}

//2登入失败=>提示用户错误
//3.任何请求都携带token
//axios拦截器
axios.interceptors.request.use(config => {
    //如果是登入请求或者注册 那么就不需要传递token值了
    if (config.url == "/api/users/login" || config.url == "/api/users/regist") {
        return config
    } else {
        let token = localStorage.getItem("token")
        config.headers['authorization'] = token;
        return config
    }

}) //请求拦截器 所以的请求发送之前都会被此函数拦截

//4.保持登入 token=>失效 让页面跳转到登入页面
// token=>未失效 放行=>直接跳转到主页
const isLogin = () => {
    return axios.get("/api/users/check") //此接口专门用于验证是否登入
}
//获取列表
const getList = (data = "") => {
    return axios.get("/api/positions/getList", {
        data: data
    })
}
export {
    login,
    getList,
    isLogin
}
